home *** CD-ROM | disk | FTP | other *** search
- /* $VER: TestArc.rexx 8.3 (5.12.94)
- copyright 1990-94 Richard Lee Stockton
- FREELY DISTRIBUTABLE
-
- Required in C: directory:
- arc dms lha unarj unzip zoo
- */
-
- OPTIONS FAILAT 999
- CR='0D'x
- LF='0A'x
-
- PARSE ARG argname .
- endtest=UPPER(RIGHT(argname,4))
- CALL DELETE('RAM:file_id.diz')
-
- arcomm=''
- IF endtest='.ARC' THEN arcomm='c:arc >RAM:TestArc.txt t'
- ELSE IF endtest='.ARJ' THEN arcomm='c:unarj >RAM:TestArc.txt t'
- ELSE IF endtest='.DMS' THEN arcomm='c:dms >RAM:TestArc.txt VIEW'
- ELSE IF endtest='.ZOO' THEN arcomm='c:zoo >RAM:TestArc.txt -t'
- ELSE IF endtest='.ZIP' THEN arcomm='c:unzip >RAM:TestArc.txt -t'
- ELSE IF endtest='.LHA' | endtest='.LZH' THEN
- arcomm='c:lha >RAM:TestArc.txt -N t'
-
- IF arcomm='' THEN EXIT 0
- IF ~EXISTS(WORD(arcomm,1)) THEN
- DO
- SAY 'Can''t check archive integrity,' WORD(arcomm,1) 'does not exist!'CR
- EXIT 0
- END
-
- SAY 'Testing archive integrity...'CR
- ADDRESS COMMAND arcomm argname
- err=RC
- IF err>0 THEN
- DO
- CALL DELAY(100)
- IF OPEN(f,'RAM:TestArc.txt','R')~=0 THEN
- DO i=1 WHILE ~EOF(f)
- SAY READLN(f)||CR
- END
- CALL CLOSE(f)
- EXIT err
- END
-
- arcomm=''
- IF endtest='.ARC' THEN arcomm='c:arc >RAM:TestArc.txt e'
- ELSE IF endtest='.ARJ' THEN arcomm='c:unarj >RAM:TestArc.txt e'
- ELSE IF endtest='.ZOO' THEN arcomm='c:zoo >RAM:TestArc.txt -e'
- ELSE IF endtest='.ZIP' THEN arcomm='c:unzip >RAM:TestArc.txt -j'
- ELSE IF endtest='.LHA' | endtest='.LZH' THEN
- arcomm='c:lha >TestArc.txt -Nx0 e'
-
- IF arcomm='' | ~EXISTS(WORD(arcomm,1)) THEN EXIT 0
- ADDRESS COMMAND 'CD RAM:'LF||arcomm argname 'file_id.diz'
- SAY ' - Archive tested OK -'CR
- EXIT 0
-
- /* TestArc.rexx */
-